﻿using Adventure.Server.Library;

namespace Adventure.Server.Manager
{
    /// <summary>
    /// Object Manager interface
    /// </summary>
    public interface IObjectManager
    {
        /// <summary>
        /// Gets the object with the given id.
        /// </summary>
        /// <param name="id">Id of the object to get.</param>
        /// <returns>The SavedObject instance or null if not found.</returns>
        SavedObject GetObject(string id);

        /// <summary>
        /// Saves the object given.
        /// </summary>
        /// <param name="obj">Object to save.</param>
        void Save(SavedObject obj);
    }
}
